Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make the frontend a module for customview #1313

Merged
merged 9 commits into from
Dec 9, 2024

Conversation

syucream
Copy link
Contributor

@syucream syucream commented Nov 2, 2024

Current custom view is being in chaos ...

  • No official API, so some developers will call various exported variables/functions directly. So custom views will be broken easily with this repo's changes.
  • No node module management for custom views. Mostly it requires to install additional modules in "this" repo.
  • It should require filesystem hack to install custom views, e.g. put their custom views in frontend/src/customview/..., a non-scalable way ...

So I wanna propose a smarter integration way between core (this repo) and custom views. Just providing this frontend implementations as a node module, then make developers to extend it theirselves. Thats like class-extension in some object-oriented languages, class MyCustomView extends PagodaCore { ....
Its an example customview project to extend that with a simple React components.
https://github.com/syucream/pagoda-customview-example

@syucream syucream force-pushed the feature/frontend-core-module branch from d161a0a to 72e1e9d Compare November 2, 2024 14:14
@syucream syucream force-pushed the feature/frontend-core-module branch from 72e1e9d to f747a93 Compare November 2, 2024 15:45
@syucream
Copy link
Contributor Author

syucream commented Nov 9, 2024

Separated a large, independent improvement part as another PR:
#1318

@syucream
Copy link
Contributor Author

Now it works fine with my super simple sample project! https://github.com/syucream/pagoda-customview-example

image

@syucream
Copy link
Contributor Author

syucream commented Nov 15, 2024

And also I've added a workflow to auto-publish the pagoda-core npm module, triggered on a new release tag named pagoda-core-x.y.z.

@syucream syucream marked this pull request as ready for review November 16, 2024 14:20
Copy link
Member

@userlocalhost userlocalhost left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

How excellent this is !!

@syucream
Copy link
Contributor Author

syucream commented Dec 7, 2024

Now my experimental module is available on https://github.com/users/syucream/packages/npm/pagoda-core/versions 🎉
I've granted @userlocalhost and @hinashi admin permissions!

Copy link
Contributor

@hinashi hinashi left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@userlocalhost userlocalhost merged commit 35b94cb into dmm-com:master Dec 9, 2024
3 checks passed
@userlocalhost userlocalhost deleted the feature/frontend-core-module branch December 9, 2024 07:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants